<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>Geometric Description Language</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/Geometric_Description_Language"> <link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Geometric_Description_Language rootpage-Geometric_Description_Language skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">Geometric Description Language</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr"><style data-mw-deduplicate="TemplateStyles:r1251242444">
/* start https://en.wikipedia.org/ */
.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}@media print{body.ns-0 .mw-parser-output .ambox{display:none!important}}
/* end https://en.wikipedia.org/ */
</style>
<p>In <a href="Computer-aided_design" title="Computer-aided design">computer-aided design</a>, <b>Geometric Description Language</b> (<b>GDL</b>) is the <a href="Programming_language" title="Programming language">programming language</a> of <a href="Archicad_library_part" title="Archicad library part">Archicad library parts</a>. <b>GSM</b> is the <a href="File_format" title="File format">file format</a> of these CAD objects.
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="Area_of_usage">Area of usage</h2></div>
<p>These objects are similar to blocks in <a href="AutoCAD" title="AutoCAD">AutoCAD</a>, but unlike blocks, these are parametric, and the 2D and 3D features are connected, so in any view one can get the correct visualization (for example a side view on the section, top view on plan, and perspective in the 3D view). GDL scripts define an Archicad library part in its main roles, these are 3D model, 3D model projected to section/elevation or to 2D plan, 2D plan view, <a href="User_interface" title="User interface">user interface</a> display and behaviour and listing quantities.
</p><p>All versions of the <a href="Archicad" title="Archicad">Archicad</a> contain their own default libraries, also objects like furniture, windows, doors, trees, people, cars, construction elements, etc.
</p><p>There are several commercial websites for selling high-detailed intelligent parametric objects, which are perhaps better and more variable than the default libraries, for example there are a lot of environmental objects like plants, people or garden elements, which are not included in the original software.
</p>
<div class="mw-heading mw-heading2"><h2 id="Licensing">Licensing</h2></div>
<p>GDL is a free technology (although Archicad itself is a commercial software), it is allowed and possible to develop GDL based object libraries using free tools like <a href="Graphisoft" title="Graphisoft">Graphisoft</a> LP_XMLConverter and Graphisoft GDL Web Plug-In (Discontinued).
</p>
<div class="mw-heading mw-heading2"><h2 id="Technical_information">Technical information</h2></div>
<p>The GDL programming language is <a href="BASIC" title="BASIC">BASIC</a>-like. It has the same control flow statements and variable logic.
</p><p>In 2D and 3D in GDL, all the model elements are linked to a local right-handed <a href="Coordinate_system" title="Coordinate system">coordinate system</a>. For placing an element in the desired position, you have to move the coordinate system to the desired position (and orientation), then generate the element itself. Every movement, rotation or stretching of the coordinate system is called a <a href="Transformation_(mathematics)" class="mw-redirect" title="Transformation (mathematics)">transformation</a>. Transformations are stored in a <a href="Stack_(data_structure)" class="mw-redirect" title="Stack (data structure)">stack</a>, which can be extended by further transformations and can be cut by deleting one or more transformations from the top of it.
</p><p>GDL maintains <a href="Forward_compatibility" title="Forward compatibility">forward compatibility</a>, which means that an <a href="Archicad_library_part" title="Archicad library part">Archicad library part</a> will be readable with every subsequent Archicad program, but not necessarily with any earlier versions.
</p>
<div class="mw-heading mw-heading2"><h2 id="External_links">External links</h2></div>
<ul><li><a rel="nofollow" class="external text" href="http://gdl.graphisoft.com">GDL Center, GRAPHISOFT's GDL knowledge base and community center</a></li>
<li><a rel="nofollow" class="external text" href="https://www.nottingham.ac.uk/~lazwww/cookbook/CB_download/cookbook3download.html">GDL Cookbook 3</a></li>
<li><a rel="nofollow" class="external text" href="https://docs.google.com/document/d/1pzYnhHXr9DEHjTo1YBw-wS_r7bUWMzhrWP5md-tUAds/preview?pli=1">GDL Cookbook 4</a></li>
<li><a rel="nofollow" class="external text" href="http://www.shoegnome.com/2013/08/13/guest-blogger-kristian-bursell-archicad-gdl-vs-revit-families/">Archicad GDL vs Revit Families</a></li></ul></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2023-10-15" href="https://en.wikipedia.org/wiki/?title=Geometric_Description_Language&oldid=1180252776">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
</body></html>